<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<!-- 避免IE使用兼容模式 -->
<meta http-equiv="X-UA-Compatible" content="IE=edge, chrome=1">
<meta name="renderer" content="webkit">
<!-- TopJUI框架样式 -->
<link type="text/css" href="../../topjui/themes/default/topjui.core.min.css" rel="stylesheet">
<link type="text/css" href="../../topjui/themes/default/topjui.blue.css" rel="stylesheet" id="dynamicTheme" />
<!-- FontAwesome字体图标 -->
<link type="text/css" href="../../statics/plugins/font-awesome/css/font-awesome.min.css" rel="stylesheet" />
<!-- layui框架样式 -->
<link type="text/css" href="../../statics/plugins/layui/css/layui.css" 	rel="stylesheet" />
<!-- jQuery相关引用 -->
<script type="text/javascript" src="../../statics/plugins/jquery/jquery.min.js"></script>
<script type="text/javascript" src="../../statics/plugins/jquery/jquery.cookie.js"></script>
<!-- TopJUI框架配置 -->
<script type="text/javascript" src="../../statics/public/js/topjui.config.js"></script>
<!-- TopJUI框架核心-->
<script type="text/javascript" src="../../topjui/js/topjui.core.min1.js"></script>
<!-- TopJUI中文支持 -->
<script type="text/javascript" src="../../topjui/js/locale/topjui.lang.zh_CN.js"></script>
<!-- layui框架js -->
<script type="text/javascript" src="../../statics/plugins/layui/layui.js" charset="utf-8"></script>
<script>
var POSID='';
</script>
</head>
<body>
	<div data-toggle="topjui-layout" data-options="fit:true">
		<div
			data-options="region:'center',title:'',fit:true,split:true,border:false">
			<!-- datagrid表格 -->
			<table data-toggle="topjui-datagrid" class="productDg1"
				data-options="id: 'userDg',
               				fitColumns:true,
              				remoteSort:false,
               				method:'get',
               				url: '/user/queryUser'">
				<thead>
					<tr>
						<th data-options="field:'empnum',title:'工号',sortable:true,width:100,align:'center'"></th>
						<th data-options="field:'name',title:'姓名',sortable:true,width:100,align:'center'"></th>
						<th data-options="field:'sex',title:'性别',sortable:true,width:50,align:'center'"></th>
						<th data-options="field:'depName',title:'部门',sortable:true,width:100,align:'center'"></th>
						<th data-options="field:'posName',title:'职位',sortable:true,width:100,align:'center'"></th>
						<th data-options="field:'operate',title:'操作',formatter:operateFormatter,width:50,align:'center'"></th> 	
					</tr>
				</thead>
			</table>
		</div>
	</div>
	<!-- layout布局 结束 -->

	<!-- 表格工具栏开始 -->
	<div id="userDg-toolbar" class="topjui-toolbar"
		data-options="grid:{
           type:'datagrid',
           id:'userDg'
       }">
       <a href="javascript:void(0)" data-toggle="topjui-menubutton"
			data-options="iconCls: 'fa fa-plus',btnCls:'topjui-btn-blue'" onclick="openAddDiag()">新增</a>
		<form id="queryForm" class="search-box">
			<input type="text" name="empnum" data-toggle="topjui-textbox"
				data-options="id:'empnum',prompt:'工号',width:100,validType:'maxLength[10]'">
			<input type="text" name="name" data-toggle="topjui-textbox"
				data-options="id:'name',prompt:'姓名',width:100,validType:'maxLength[20]'">
				
			<input type="text" name="sex" id="sex"
                           data-toggle="topjui-combobox"
                           data-options="prompt:'性别',
                           					width:100,
	                       				 panelHeight:80,
                           			     data:[{value:'男',text:'男'},{value:'女',text:'女'}]">
                           
			<input type="text" name="depid"
                   data-toggle="topjui-combotree"
                   data-options="required:false,
               value: '',    
               prompt:'部门',
               width:180,
               valueField:'id',
               textField:'text',
               method:'get',
               onSelect:function(node){
               	$('#posid').combobox({
               		url:'/user/queryPos?depid='+node.id,
               		method: 'get',            
        			valueField: 'id',//绑定字段ID            
        			textField: 'text',//绑定字段Name            
        			panelHeight: 'auto',//自适应   
        			multiple: false
               	});
               },
               onLoadSuccess:function(data){
               	
               },
               url:'/dep/queryDepartmentList'">
               
               <input type="text" name="posid"
                   data-toggle="topjui-combo" id="posid"
                   data-options="required:false,
               prompt:'职位',
               width:150,
               valueField:'id',
               textField:'text',
               method:'get',
               multiple:false">
               
             <input type="text" name="roleid"
                   data-toggle="topjui-combobox"
                   data-options="required:false,
               prompt:'权限模版',
               width:180,
               valueField:'id',
               textField:'text',
               method:'get',
               onLoadSuccess:function(data){
               	
               },
               url:'/user/queryRole'">
                      	
			<a href="javascript:void(0)" data-toggle="topjui-menubutton"
				data-options="method:'query',
           					iconCls:'fa fa-search',
           					btnCls:'topjui-btn-blue',
           					form:{id:'queryForm'},
           					grid:{type:'datagrid','id':'userDg'}">查询</a>
		</form>
	</div>

	<!-- 表格工具栏结束 -->

	<script>
	
	function openAddDiag(){
		ID = '';
		var $addDialog = $('<form id="userDg-add"  style="width: 900px; height:500px; margin: auto; display: none;"></form>');
		var diag = $addDialog.dialog({
		    title: '用户新建',
		    href: '/web/view/user/user_add.html',
		    modal: true,
		    resizable:true,
 		    maximizable:true,
		    collapsible:true,
		    buttons:[{
				text:'保存',
				handler:function(){
					if($('#userDg-add').form('validate')) {
						var formData = $("#userDg-add").serialize();
						var url = '/user/insertUser';
						//debugger;	
						//var rows = $('input[name="authids"]');
						debugger;	
						//var authids=[];
						//rows.each(function(){
							//var obj ={};
							//obj.authid = $(this).val();//这个键值对的key值这里是authid，要与xml中的描述一致；
							//authids.push(obj);
						//});
						
						//其他的需要的表单元素只要controller函数中有对应的参数，都可以接收到，这里不用拼参数了；
			            $.post(url,formData+'&userid='+ID,function (res,status) {
			            //$.post(url,formData+'&userid='+ID+'&aids='+JSON.stringify(authids),function (res,status) {
			                if (status == 'success') { // 后台返回状态值
			                    $.iMessager.show({title: '我的消息', msg: res.message, timeout: 5000, showType: 'slide'});// '消息窗口'组件
			                    $("#userDg").iDatagrid('reload');// 刷新下表格数据
			                    diag.dialog("destroy");// 销毁dialog面板
			                } else {
			                    $.iMessager.show({title: '我的消息', msg: res.message, timeout: 5000, showType: 'slide'});// '消息窗口'组件
			                }
			            },'JSON');
					}
				}
			},{
				text:'关闭',
				handler:function(){diag.dialog("destroy");}
			}],onClose: function () {
                $(this).dialog('destroy');//销毁
            }
		});
		$addDialog.dialog('open');
		
	}
	
	//表头“操作”栏，formatter定义，这里面可以自定义按钮样式
	//row = {authShowStr: "系统管理 , 部门管理... ", createuserid: "1", id: "1", isdel: "0", username: "管理员"}
	function operateFormatter(value, row, index) {
		debugger;
        var htmlstr = '<button class="layui-btn layui-btn-xs" onclick="openEditDiag(\'' + row.id + '\')">编辑</button>';
        htmlstr += '<button class="layui-btn layui-btn-xs layui-btn-danger" onclick="deleteRow(\'' + row.id + '\')">删除</button>';
        return htmlstr;
    }
	function deleteRow(id){
		debugger;
		$.messager.confirm("操作提示", "删除用户将会删除与之关联的一切信息！是否删除？", function (data) {
			if(data) {
				$.post("/user/delUser",{"userid":id},function(res,status){
					 if (status == 'success') { // 后台返回状态值
		                 $.iMessager.show({title: '我的消息', msg: res.message, timeout: 5000, showType: 'slide'});// '消息窗口'组件
		                 $("#userDg").iDatagrid('reload');// 刷新下表格数据（userDg是上面数据表格的id）
		                 $('#userAddDialog').iDialog('destroy');// 销毁dialog面板
		             } else {
		                 $.iMessager.show({title: '我的消息', msg: res.message, timeout: 5000, showType: 'slide'});// '消息窗口'组件
		             }
				},'JSON');
			}else {}
		});
	}
	
	//打开编辑页面
	var ID = "";//定义全局变量用于保存当前角色id
	function openEditDiag(id){
		debugger;
		ID = id;
		$.ajax({ url: "/user/queryUserById?userid="+ID, 
 			type:"get",dataType:"json", success: function(data){
 			openDialog(data.data);//调用下面的用于回显的打开对话框函数
		 }}); //调用下面的函数时只提供了返回的user对象，并没有authids的数组，这个怎么处理呢？？？
	}
	
	//由openEditDiag(id)函数末尾调用
	function openDialog(d){
		debugger;
		var $updateDialog = $('<form id="userDg-update"  style="width: 900px; height: 500px; margin: auto; display: none;"></form>');
		var diag = $updateDialog.dialog({
		    title: '用户编辑',
		    href: '/web/view/user/user_add.html',
		    modal: true,
		    resizable:true,
 		    maximizable:true,
		    collapsible:true,
		    buttons:[{
				text:'保存',
				handler:function(){
					if($('#userDg-update').form('validate')) {
						  var formData = $("#userDg-update").serialize();
						  var url = '/user/updateUser';
						  //这里模仿上面的写法获取checkbox的值

						//debugger;	
						//var rows = $('input[name="authids"]');//authids是user_add.html页面中的下拉列表的checkbox控件的name
						//var authids=[];
						//rows.each(function(){
							//var obj ={};
							//obj.authid = $(this).val();//这个键值对的key值这里是authid，要与xml中的描述一致；
							//authids.push(obj);
						//});
						  
							//下面的参数也要参考上面的写法
							//aids是Controller的updateUser方法中的参数
			            	//$.post(url,formData+'&userid='+ID+'&aids='+JSON.stringify(authids),function (res,status) {
			            	$.post(url,formData+'&userid='+ID,function (res,status) {
				                if (status == 'success') { // 后台返回状态值
				                    $.iMessager.show({title: '我的消息', msg: res.message, timeout: 5000, showType: 'slide'});// '消息窗口'组件
				                    $("#userDg").iDatagrid('reload');// 刷新下表格数据
				                    diag.dialog("destroy");// 销毁dialog面板
				                } else {
				                    $.iMessager.show({title: '我的消息', msg: res.message, timeout: 5000, showType: 'slide'});// '消息窗口'组件
				                }
				            },'JSON');
					  }
				}
			},{
				text:'关闭',
				handler:function(){diag.dialog("destroy");}
			}],
			onClose: function () {
                $(this).dialog('destroy');//销毁
            },onLoad :function(){
        		debugger;
            	$('#userDg-update').form('load',d);//回显数据
            }
		});
		$updateDialog.dialog('open');
	}
</script>


</body>
</html>